In a computer or processor architecture, a bus is a subsystem that transfers data between computer components within a computer or between computers. Bus architectures are also used in common data signalling paths for multiple devices, rather than having separate connections between each set of devices that need to communicate. In other words, the bus structure can be used to allow one or more slave devices to communicate with one or more master devices.